package com.ctshk.rpc.localfun.dto.es;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ApiModel(value = "LocalFunCacheUpDTO对象", description = "当地玩乐缓存上架对象")
public class LocalFunProductCacheUpDTO implements Serializable {

    @ApiModelProperty(value = "產品ID")
    private Long id;

    @ApiModelProperty(value = "产品名称")
    private String productName;

    @ApiModelProperty(value = "产品编号")
    private String productCode;

    @ApiModelProperty(value = "所属城市id")
    private Long cityId;

    @ApiModelProperty(value = "城市名称")
    private String cityName;

    @ApiModelProperty(value = "游玩类型ID")
    private Long funType;

    @ApiModelProperty(value = "优先级")
    private Integer sort;

    @ApiModelProperty(value = "游玩类型名称")
    private String funName;

    @ApiModelProperty(value = "封面图url")
    private String coverImage;

    @ApiModelProperty(value = "标题")
    private String title;

    @ApiModelProperty(value = "H5价格")
    private Double h5Price;

    @ApiModelProperty(value = "PC价格")
    private Double pcPrice;

    @ApiModelProperty(value = "PC规格属性")
    private List<LocalFunAttrDTO> pcAttrs;

    @ApiModelProperty(value = "H5规格属性")
    private List<LocalFunAttrDTO> h5Attrs;

    @ApiModelProperty(value = "产品销量")
    private Integer saleCount;

    @ApiModelProperty(value = "产品创建时间")
    private LocalDateTime createDate;

    @ApiModelProperty(value = "产品图片JSON")
    private List<PhotosJson> photosJson;

    @ApiModelProperty(value = "门票Json")
    private List<ThemeJson> themeJson;

    @ApiModelProperty(value = "产品介绍")
    private String productIntroduces;

    @ApiModelProperty(value = "是否推荐(0 否 ,1 是)")
    private Integer isRecommend;

    @ApiModelProperty(value = "产品特性Json")
    private List<FutureJson> futureJson;

    @ApiModelProperty(value = "取消政策(1 限时取消  2 不退不改)")
    private Integer cancelPolicy;

    @ApiModelProperty(value = "预订退改须知")
    private String customerNotice;

    @ApiModelProperty(value = "使用说明")
    private String useInstructions;

}
